﻿using SaiLing.Paging;
using SaiLing.SingleSignOn.Domain.Entities.System;
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;

namespace SaiLing.SingleSignOn.Application.Service.Interfaces.System
{
    public interface IOrganizationService : IBaseService<Organization>
    {
        Task<PageData<Organization>> PageList(int pageIndex, int pageSize, string name);

        Task<IEnumerable<Organization>> List(string name);

        Task<int> Create(Organization entity);

        Task<int> Edit(Organization entity);

        Task<int> Delete(Organization[] entityies);

        object GetOrganizationAuthorityObject(Guid? parentOrganizationId = default(Guid?), Guid? organizationId = default(Guid?));
    }
}
